//src/utils/request.js
import axios from 'axios'
import { getToken } from './auth'

// 创建 axios 实例
const service = axios.create({
  baseURL: process.env.VUE_APP_BASE_URL, // url = base url + request url
  timeout: 100000, // request timeout
})
// request 拦截器
service.interceptors.request.use(
    config => {
        // 这里可以自定义一些config 配置
        const token = getToken('token');
        config.headers.Authorization = "Bearer " + token
        return config
    },
    error => {
        //  这里处理一些请求出错的情况
        Promise.reject(error)
    }
)

// response 拦截器
service.interceptors.response.use(
    response => {
        const res = response.data
        // 这里处理一些response 正常放回时的逻辑
        return res
    },
    error => {
        // 这里处理一些response 出错时的逻辑
        if (!getToken('token')) {
            window.location.replace("login.html");
        }
        return Promise.reject(error)
    }
)

export default service
